Data center collective environment monitoring and response

ABSTRACT

A mechanism is provided for utilizing localized clusters within a mesh network to aid in tracking environmental factors associated with information handling systems in an environment having a large number of information handling systems installed. Sensors within each information handling system measure a variety of environmental factors, such as, for example, temperature (CPU, ambient, air inlet, air exhaust, system board, and the like), air flow through the information handling system, fan speed, and hardware utilization. The sensor-derived environmental information is provided to a lead local cluster node, which can provide local responses to environmental values exceeding thresholds. Lead nodes generate a mapping of the environmental factors and provide that mapping to a data center management server. The data center management server collates environmental mapping information to derive a data center-wide environmental mapping used by management personnel to make adjustments to balance load, reduce temperatures, and reduce energy usage.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention relates to information handling systems.Specifically, embodiments of the invention relate to gatheringinformation related to environmental factors in a data center andtracking and displaying information related to those environmentalfactors in a manner that allows for rapid and automated response.

Description of the Related Art

As the value and use of information continues to increase, individualsand businesses seek additional ways to process and store information.One option available to users is information handling systems. Aninformation handling system generally processes, compiles, stores, orcommunicates information or data for business, personal, or otherpurposes thereby allowing users to take advantage of the value of theinformation. Variations in information handling systems allow forinformation handling systems to be general or configured for a specificuser or specific use such as transaction processing, airlinereservations, enterprise data storage, or global communications. Inaddition, information handling systems can include a variety of hardwareand software components that can be configured to process, store, andcommunicate information and may include one or more computer systems,data storage systems, and networking systems. Further, informationhandling systems can be incorporated in a variety of environments,including, for example, desktop devices, mobile devices, and large datacenter configurations with hundreds-to-thousands of information handlingsystems in multiple environmentally controlled rooms.

In a data center environment where there can be thousands of informationhandling systems, managing and tracking such systems presents challengesto data center management. These challenges can include, for example,maintaining current information regarding the environment of the datacenter, including subregions of the data center, and providing amechanism for responding to such environmental factors.

SUMMARY OF THE INVENTION

A system, method, and computer-readable medium are disclosed forutilizing localized clusters within a mesh network to aid in trackingenvironmental factors associated with information handling systems in anenvironment having a large number of information handling systemsinstalled.

In one embodiment, an information handling system is provided thatincludes a processor, one or more sensors coupled to the processor andconfigured to measure a first environmental characteristic, a wirelessnetwork interface coupled to the processor and configured to communicatewith a wireless mesh network in a data center, and a non-transitory,computer-readable storage medium embodying computer program code wherethe non-transitory, computer-readable storage medium is coupled to theprocessor and the computer program code interacts with a plurality ofcomputer operations and includes instructions executable by theprocessor. The instructions are configured to cause the processor to:collect data associated with the first environmental characteristic fromthe one or more sensors; transmit the data associated with the firstenvironmental characteristic to a cluster lead node using the wirelessnetwork interface where the information handling system is a member of alocal cluster of nodes in the wireless mesh network and the cluster leadnode is the lead node of the local cluster of nodes; and, transmit afirst threshold exceeded message to the cluster lead node when the dataassociated with the first environmental characteristic exceeds athreshold associated with the first environmental characteristic.

In one aspect of the above embodiment, the first environmentalcharacteristic includes one of processor temperature, air inlettemperature, exhaust temperature, ambient temperature, humidity, and fanspeed. In another aspect of the above embodiment, the local cluster ofnodes in the wireless mesh network includes one or more mesh networknodes within a fixed radius of the cluster lead node. In yet anotheraspect of the above embodiment, the cluster lead node is configured tocommunicate directly with each node in the local cluster of nodes anddirectly with cluster lead nodes of neighboring clusters. In a furtheraspect, the cluster lead node is further configured to communicate witha data center management server.

In another aspect of the above embodiment, the instructions furtherinclude instructions configured to cause the processor to: receive viathe wireless network interface from the cluster lead node a command toadjust an operational parameter in response to the data associated withthe first environmental characteristic, and adjust the operationalparameter in response to the command. In a further aspect, theoperational parameter includes one or more of a periodicity of sensormeasurements of the first environmental characteristic, a granularity ofsensor measurements of the first environmental characteristic, and aspeed of a fan in an enclosure of the information handling system.

Another embodiment provides an information handling system configured asa cluster lead node of a local cluster of network nodes that are membersof a wireless mesh network. The information handling system includes aprocessor, a wireless network interface coupled to the processor andconfigured to communicate with a wireless mesh network in a data centerwhere the wireless mesh network includes one or more network nodes thatare members of the local cluster of nodes, a second network interfacecoupled to the processor and a second network and configured tocommunicate with a data center management system coupled to the secondnetwork, and a non-transitory, computer-readable storage mediumembodying computer program code, the non-transitory, computer-readablestorage medium coupled to the processor, the computer program codeinteracting with a plurality of computer operations and includinginstructions executable by the processor. The instructions areconfigured to cause the processor to: receive, from one or more globalcluster nodes via the wireless network interface, data associated with afirst environmental characteristic at each of the one or more localcluster node; generate a mapping of the first environmentalcharacteristic where the mapping associates the first environmentalcharacteristic value with the corresponding local cluster node location;and, transmit, using the second network interface, the mapping of thefirst environmental characteristic to the data center management system.

In one aspect of the above embodiment, the first environmentalcharacteristic is a temperature associated with each of the one or morelocal cluster nodes. In another aspect of the above embodiment, theinstructions executable by the processor further include instructionsconfigured to cause the processor to receive, from the one or more localcluster nodes, via the wireless interface, a threshold exceeded messageassociated with the first environmental characteristic where thethreshold exceeded message indicates that the first environmentalcharacteristic exceeds a dynamic threshold value associated with thecorresponding local cluster node. In a further aspect, instructions arefurther configured to cause the processor to, in response to thethreshold exceeded message, determine an operational parameteradjustment for a subset of the one or more local cluster nodes if alocal adjustment is configured, and transmit the operational parameteradjustment to the subset of the one or more local cluster nodes. Inanother further aspect, the instructions are further configured to causethe processor to, in response to the threshold exceeded message,transmit the threshold exceeded data to the data center managementsystem, and transmit an operational parameter adjustment to a subset ofthe one or more local cluster nodes if the operational parameteradjustment is received from the data center management system. In afurther aspect, the operational parameter adjustment is associated withthe mapping of the first environmental characteristic and the thresholdexceeded data.

In another aspect of the above embodiment, the instructions are furtherconfigured to cause the processor to, in response to the thresholdexceeded message and if the first environmental characteristic is atemperature: transmit a request for temperature data from neighborcluster lead nodes; determine fan speed adjustments for one or morelocal cluster and neighbor cluster nodes; transmit the fan speedadjustments to the one or more local cluster nodes associated with theadjustment; and, transmit the fan speed adjustments to the neighborcluster lead nodes.

In another embodiment, a data center management system is provided thatincludes a wireless mesh network including one or more local clusters ofmesh network nodes that each include a cluster lead node, and a datacenter management server coupled to the wireless mesh network andconfigured to communicate with the cluster lead nodes. Each localcluster includes a cluster lead node configured to communicate directlywith each mesh network node in the cluster and with each neighborcluster lead node, and one or more mesh network nodes configured tocommunicate directly with the cluster lead node and physically locatedwithin a predetermined radius of the cluster lead node. Each meshnetwork node is configured to transmit data associated with anenvironmental characteristic to the associated cluster lead node. Eachcluster lead node is configured to generate a mapping of theenvironmental characteristic. The cluster lead nodes are furtherconfigured to transmit the cluster mapping of the environmentalcharacteristic to the data center management server. The data centermanagement server is configured to generate a global mapping of the datacenter for the environmental characteristic from the cluster mappings ofthe environmental characteristic.

In one aspect of the above embodiment, the data center management serveris further configured to determine operational parameter adjustments formesh network nodes in response to the global mapping for theenvironmental characteristic, and transmit the operational parameteradjustments to the implicated cluster lead nodes. In a further aspect,the implicated cluster lead nodes are further configured to transmit theoperational parameter adjustments to implicated cluster member meshnetwork nodes. In yet a further aspect, the operational parameter is oneof fan speed and speed of a processor of a mesh network node.

In another aspect of the above embodiment, the data center managementsystem further includes a mobile service device communicatively coupledto the data center management server. The mobile service device isconfigured to receive the global mapping information from the datacenter management server and display the global mapping information is avisual overlay on a video image of a portion of the data center. Inanother aspect, the environmental characteristic is one of processortemperature, motherboard temperature, air inlet temperature, exhausttemperature, and ambient temperature.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention may be better understood, and its numerousobjects, features and advantages made apparent to those skilled in theart by referencing the accompanying drawings. The use of the samereference number throughout the several figures designates a like orsimilar element.

FIG. 1 is a generalized illustration of an information handling systemthat can be used to implement the system and method of the presentinvention.

FIG. 2 is a simplified block diagram illustrating a portion of a datacenter, including a server rack, a data center management system, and amobile service device.

FIG. 3 is a simplified block diagram illustrating an expanded view ofdata center, including server rack, data center management system, andmobile service device, as shown in FIG. 2 .

FIG. 4 is a simplified block diagram illustrating an example set ofserver racks and their system slots with an example of mesh networkcluster formation.

FIG. 5 is a simplified flow diagram illustrating an example process 500executed by an information handling system for providing sensor data toa cluster lead node and responding to adjustment comments from the leadnode, in accord with embodiments of the present invention.

FIG. 6 is a simplified flow diagram illustrating an example process 600executed by a cluster lead node to respond to sensor data received fromother cluster nodes, in accord with an embodiment of the presentinvention.

FIG. 7 is a simplified flow diagram illustrating an example process 700executed by a data center management system to respond to data receivedfrom cluster lead nodes, in accord with an embodiment of the presentinvention.

DETAILED DESCRIPTION

A system, method, and computer-readable medium are disclosed forutilizing localized clusters within a mesh network to aid in trackingenvironmental factors associated with information handling systems in anenvironment having a large number of information handling systemsinstalled. In one embodiment, each information handling system isincorporated into a Bluetooth Low Energy (BLE) mesh network to enablethe systems to form localized clusters within the mesh network.Embodiments provide sensors within each information handling system tomeasure a variety of environmental factors, such as, for example,temperature (CPU, ambient, air inlet, air exhaust, system board, and thelike), air flow through the information handling system, fan speed, andhardware utilization. Embodiments provide the sensor-derivedenvironmental information to a lead cluster node, which can providelocal responses to environmental values exceeding thresholds. Lead nodescan also generate a mapping of the environmental factors (e.g., atemperature map) and provide that mapping to a data center managementserver. The data center management server can collate environmentalmapping information to derive a data center-wide environmental mappingthat can then be used by management personnel to make adjustments withinthe data center to balance load, reduce temperatures, and reduce energyusage. The data center management server can also provide the datacenter-wide environmental mapping to a mobile service platform that candisplay the mapping information using augmented reality protocols.

For purposes of this disclosure, an information handling system includesany instrumentality or aggregate of instrumentalities operable tocompute, classify, process, transmit, receive, retrieve, originate,switch, store, display, manifest, detect, record, reproduce, handle, orutilize any form of information, intelligence, or data for business,scientific, control, or other purposes. For example, an informationhandling system may be a personal computer, a network storage device, orany other suitable device and may vary in size, shape, performance,functionality, and price. The information handling system may includerandom access memory (RAM), one or more processing resources such as acentral processing unit (CPU) or hardware or software control logic,ROM, and/or other types of nonvolatile memory. Additional components ofthe information handling system may include one or more disk drives, oneor more network ports for communicating with external devices as well asvarious input and output (I/O) devices, such as a keyboard, a mouse, anda video display. The information handling system may also include one ormore buses operable to transmit communications between the varioushardware components.

FIG. 1 is a generalized illustration of an information handling system100 that can be used to implement the system and method of the presentinvention. Information handling system 100 includes one or moreprocessors (e.g., one or more processing cores or a central processorunit (CPU)) 102, input/output (I/O) devices 104, such as a display, akeyboard, a mouse, and associated controllers, a hard drive or diskstorage 106, sensors (e.g., temperature, humidity, fan speed, air flow,noise, and the like) 107, and various other subsystems 108, including abaseboard management controller (BMC) 160. In various embodiments,information handling system 100 also includes one or more network ports110 providing communication interfaces to network nodes external to theinformation handling system. One example of a network port includes anetwork interface card (e.g., Ethernet) operable to connect to a network140, which is likewise accessible by a data center management server142. Information handling system 100 likewise includes system memory112, which is interconnected to the foregoing via one or more buses 114.System memory 112 further comprises operating system 116 and in variousembodiments may also comprise environment monitoring system 118.

Baseboard management controller (BMC) 160 provides out of bandmonitoring, maintenance, and control of various elements of informationhandling system 100. BMC 160 can incorporate a processing devicedistinct from processors 102 that provides various management functionsfor the information handling system. For example, BMC 160 can beresponsible for power management, cooling management, and the like.“Baseboard management controller” is a term often used in the context ofserver systems, while in a consumer-level device, a BMC can be referredto as an embedded controller. A BMC included in a data storage systemcan be referred to as a storage enclosure processor, while a BMCincluded at a chassis of a blade server can be referred to as a chassismanagement controller and embedded controllers included in blades of ablade server can be referred to as blade management controllers. Asillustrated, BMC 160 is coupled to a wireless communication interface,such as a Bluetooth or Bluetooth Low Energy (BLE) channel or otherwireless mesh network capable protocol. A BLE channel network port iswirelessly coupled to a wireless mesh network 150 that is likewiseaccessible to nodes 152(1)-(N), and allows for communication between BMC160 and similar baseboard management controllers of nodes 152(1)-(N). Inother embodiments, a wireless communication interface can be coupled toBMC 160 via a network port 110.

Capabilities and functions provided by BMC 160 vary based on the type ofinformation handling system. BMC 160 can operate in accordance with anIntelligent Platform Management Interface (IPMI). One example of BMC 160includes an integrated Dell Remote Access Controller (iDRAC). BMC 160can communicate with various portions of information handling system 100using one or more buses 114. BMC 160 utilizes various protocols andapplication programming interfaces (APIs) to direct and controlprocesses for monitoring and maintaining information handling system100. Examples of a protocol or API for monitoring and maintaining thesystem includes a graphical user interface, an interface defined by theDistributed Management Taskforce (DMTF) (e.g., Web Services Management(WS-MAN) or Management Component Transport Protocol (MCTP)), variousvendor defined interfaces (e.g., Dell EMC Remote Access ControllerAdministrator (RACADM), Dell EMC OpenManage Server Administrator (OMSS),or Dell EMC OpenManage Deployment Toolkit (DTK)), and the like.

Environment monitoring system 118 performs environmental monitoringinternal to the information handling system as well as external to theinformation handling system and communicates that information to datacenter management server 142.

Environmental monitoring system 118 is also configured to receiveinstructions from network nodes external to the information handlingsystem (e.g., a mesh cluster lead node or data center management server142) and to adjust system environmental handling parameters in responseto such instructions, as will be discussed in further detail below.Sensor analysis modules 120 are associated with each type ofenvironmental sensor coupled to bus 114 and are configured to query thesensors for the environmental data and perform initial analysis of theenvironmental data. The environmental monitoring operations improveoverall performance of the data center (and thus the efficiency of theinformation handling system 100) by allowing for automated, real-timeenvironmental monitoring and response thereto, allowing for avoidance oftemperature-related damages and for reduction in energy consumptionthroughout the data center.

FIG. 2 is a simplified block diagram illustrating a portion of a datacenter 200, including a server rack 210, a data center management system250, and a mobile service device 260. Server rack 210 includesinformation handling systems 220, 230, and 240. Information handlingsystems 220, 230, and 240 can each represent variety of computingequipment such that illustrated by information handling system 100 inFIG. 1 . As an example, information handling system 220 can be atop-of-rack switch, information handling system 230 can be a bladeserver, and information handling system 240 can be a storage server.Information handling systems 220, 230, and 240 can each include a hostedprocessing environment (not shown) that is configured to provide theprocessing tasks particular to the information handling system.Information handling systems 220, 230, and 240 each include a BMC 222,232, and 242, respectively. Each BMC includes a network interface suchthat the BMCs are all connected together in a management network 280with data center management system 250. Management network 280 can be awired network, a wireless network, or a combination of wired andwireless networks, as determined by the application.

Each BMC includes configuration information (e.g., 224, 234, and 244)and a short-range communication module (e.g., 226, 236, and 246). Theconfiguration information provides management information utilized bydata center management system 250 to monitor, manage, and maintain theassociated information handling system. Configuration information caninclude information about the physical configuration of the respectiveinformation handling system (e.g., 220, 230, and 240), and can alsoinclude information regarding the logical configuration of theinformation handling system. For example, where the information handlingsystem is a blade server, the physical configuration information caninclude the make and model of the server, a service tag, a number ofblades, and other physical information associated with the server.Configuration information can further include location information forthe blade server in server rack 210 and for the server rack in datacenter 200. Logical configuration information can also include, forexample, information associated with the health of the blade server interms of physical operational status and in terms of logical operationalstatus such as error and alert status information, and can also includeinformation as to the installed operating systems, the workloads andprocessing tasks being performed by the blades, and other informationthat identifies uses to which the blade server is configured to perform.

Short-range communication modules 226, 236, and 246 include a wirelesscommunication endpoint configured to establish a wireless communicationlink 282 to other similarly equipped devices (e.g., neighboringinformation handling systems (as will be discussed more fully below) andmobile service device 260). The short-range communication modules areconfigured to provide short connection range as compared with otherwireless technologies, such as Wi-Fi or wireless cellular technologies.An example of a short-range communication module includes, for example,a communication endpoint communicating in accord with a Bluetoothstandard, a Bluetooth low energy (BLE) standard, or another short-rangecommunication standard, as implicated by the application. Embodiments ofthe present system provide a short-range communication standardsupporting a wireless mesh network incorporating location capabilities.

Data center management system 250 is a centralized and unifiedprocessing resource for monitoring, managing, and maintaininginformation handling systems (e.g., 220, 230, and 240) throughmanagement network 280. Data center management system 250 can include awireless communication module 252 configured to establish a wirelesscommunication link 284 to another similarly equipped device (e.g.,mobile service device 262). Wireless communication module 252 isconfigured to provide a medium connection range as compared with otherwireless technologies, such as wireless cellular technologies. Anexample of such a medium-range communication module can include acommunication endpoint configured in accord with various Wi-Fistandards, or another medium-range communication standard, as indicatedby the application.

Mobile service device 260 is a device utilized by service technicians ofdata center 200 to perform monitoring, management, service, andmaintenance of information handling systems (e.g., 220, 230, and 240),and can include, a mobile device such as a tablet, smart phone, and thelike. Mobile service device 260 includes short-range communicationmodule 262, wireless communication module 264, a camera/video system266, an accelerometer module 268, and equipment image library 270, andaugmented reality evaluation module 272, and a display 274.

Short-range communication module 262 establishes communication links 282with short-range communication modules associated with the informationhandling systems (e.g., short-range medication modules 226, 236, and246). Wireless communication module 264 can establish a communicationlink 284 with wireless communication module 252 of data centermanagement system 250.

Camera/video system 266 is an integrated device of mobile service device260 configured to obtain still or motion-based images from surroundingsof the mobile service device. Position sensor module 268 is anintegrated device that operates to track the motion of mobile servicedevice 260 in three-dimensional space. From a particular location,position sensor module 268 can determine a relative location to whichthe mobile service device has been moved based upon accelerationsexperienced by the mobile service device. The position sensor modulelocates the mobile service device within data center 200 and can includea Global Positioning System (GPS) sensor to assist in determination ofthe location of the mobile service device or a mechanism fortriangulating to determine location based upon establishment of one ormore communication links similar to communication links 282 and 284.Position sensor module 268 can also include a gyroscope sensor todetermine orientation of mobile service device 260, as needed.

Image library 270 includes information storage for image objectsrepresenting various data center equipment found in data center 200.Image objects in image library 270 can be provided by, for example, amanufacturer of data center equipment, where each image object isassociated with a particular piece of data center equipment orparticular family of data center equipment. A specific image object canprovide in a primitive form the visible features of a specific type ofinformation handling system (e.g., a top-of-rack switch). Image objectscan also include other types of visibly distinguishing information suchas QR codes, barcodes, service tags, or other information serving tovisually identify the various equipment. Image library 270 can alsoinclude database information associated with each image object. Thedatabase information can include, for example, name, product code, SKU,or other information identifying the specific type of equipment, such asa number of network ports, associated switch fabric, speed, andthroughput information, and the like. In general, the image objects andassociated database information stored in image library 270 is availablefor comparison with the image data from the field of view ofcamera/video system 266 to assist evaluation module 272 in determining alocation of mobile service device 260.

Evaluation module 272 provides and augmented reality visual depiction ofsurroundings of the mobile service device overlaid on display 274.Augmented reality visual display is generated by evaluation module 272based upon various inputs to mobile service device 260, including imagedata from camera/video system 266, location information from positionsensor module 268, configuration information from one or more ofinformation handling systems 220, 230, and 240 received by acommunication links 282, from data center management system 250 receivedvia communication link 284, or from other input information available tothe mobile service device. Specifically, evaluation module 272 operatesto identify the data center equipment within server rack 210. Evaluationmodule 272 can then present image information from camera/video system268 on display 274 and then, having matched the correct image objects tothe elements of server rack 210, projects an augmented reality overlayof the matched image objects onto their respective elements of theserver rack. In addition to the projected image objects, evaluationmodule 272 can display associated identifying information in theprojected image objects that identifies the various elements of theserver rack. In some embodiments, evaluation module 272 will displayenvironmental information in the augmented reality overlays so that datacenter personnel using mobile service device 260 can more efficientlydetermine those systems needing reconfiguration or moving in order toimprove the temperature, air flow, and other environmental factors ofthe data center.

FIG. 3 is a simplified block diagram illustrating an expanded view ofdata center 200, including server rack 210, data center managementsystem 250, and mobile service device 260, shown in FIG. 2 . Data center200 is depicted as including three rows of server racks. Each row isdepicted as including eight server racks similar to server rack 210,with an aisle between each row of server racks. Additionally, each rowof server racks includes an alley that permits data center techniciansto move between rows. As illustrated, mobile service device 260 islocated in front of server rack 210. As will be discussed more fullybelow, the additional location information provided by embodiments thepresent system allows for improvement in the ability for data centerequipment to be reliably identified and located by data centermanagement system 250 and mobile service device 260 within the variousserver racks of data center 200.

Embodiments of the present system utilize short-range communication toestablish a localized mesh network to aid in determining location of anew or relocated information handling system within a data center.Bluetooth Low Energy (BLE) is an example of a mesh protocol that enablesnodes within a mesh to communicate with each other usingmessage-oriented protocol. The mesh network can be used for localneighborhood monitoring of systems introduced into the mesh. Utilizingrelative directional location capabilities of BLE, an informationhandling system provided to the mesh can determine the system's locationin relation to previously existing nodes within the mesh network.Embodiments can utilize this information to find a closest vertical nodein the mesh network to automatically aid the newly introduced system indetermining the identity of a rack within which the system has beeninstalled. That rack identifying information, in conjunction withinformation provided to the newly introduced information handling systemregarding available slots in the rack and other location information,enables the system to determine where the system is located within therack and, hence, the data center and to provide that information to adata center management system.

FIG. 4 is a simplified block diagram illustrating an example of a set ofserver racks and their system slots, along with an example of how nodesinteract during mesh network cluster formation. Three server racks A0,A1, and A2 are illustrated where each rack has 21 available slots forinformation handling systems. Typically, a server rack can have mountedsystems of differing heights and widths that can change a number ofavailable slots within the server rack, but for sake of demonstrationthe illustrated slots are of a same height and width. Filled server rackslots are shaded in the illustration (e.g., slots [A0,1], [A1,8], and[A2,12] are filled with an information handling system [e.g.,information handling system 100]). Empty server rack slots are notshaded (e.g., [A0,5], [A1,7], and [A2,6] are empty slots). As is knownin the art, server racks provide both a physical location for a mountedinformation handling system and power couplings for those systems.

As discussed above, each information handling system includes ashort-range communication module (e.g., 226, 236, and 246) thatcommunicates wirelessly with one or more nodes within a certain distanceof the system. Such communication is used to form a wireless meshnetwork, such as a BLE mesh network. In the server racks illustrated,each installed information handling system can be a member of a meshnetwork encompassing the entire data center.

To allow for location determination, the mesh network is divided intosmaller neighborhoods, or clusters. Each information handling systemlistens for BLE signals of neighborhood devices. The informationhandling system then filters these signals for nearby devices based on athreshold for distance. For example, in a data center in which theserver rack aisles (e.g., server rack aisles A and B in FIG. 3 ) areseparated by 0.75 m, the threshold distance can be 0.5 m in order toavoid a neighborhood crossing from one server rack aisle to the next.Depending upon a density of installed systems, it may be desirable toreduce a threshold distance. Threshold distance can be determined basedupon a data center set up. Alternatively, threshold distance can bedetermined automatically based upon local area density data populated bythe information handling system. FIG. 4 illustrates five differentclusters 410 420, 430, 440, and 450. Clusters can be generated using oneof a number of clustering methodologies, including k-means clustering.k-means clustering is a vector quantization method that partitions ninstances into k clusters in which each instance belongs to a clusterwith a nearest mean that serves as a prototype for the cluster. Thereare a variety of known methods for performing k-means clustering in theart and embodiments of the present invention are not limited to aparticular one of those methods. In one embodiment, k is determinedusing a divisive k search in which k is initialized as the number ofnodes, k clusters are formed using k means, if all nodes are coveredthen k is reduced and clusters are formed again, otherwise k isincreased and k clusters are formed again.

For each cluster, lead nodes and backup lead nodes are selected. Thelead node is the mesh network node closest to a centroid of the cluster,while backup leads are assigned based on how close a mesh network nodeis to the centroid. As will be discussed in further detail below, a leadnode plays an important role in inter- and intra-cluster communication.Embodiments provide that a lead node is responsible for relayinginformation to each node within a cluster, neighboring lead nodes, andthe data center management system, as well as accumulating informationregarding nodes in a cluster. As illustrated in FIG. 4 , lead nodes foreach cluster are as follows: [A0,4] (410), [A2,4] (420), [A1,10] (430),[A0,15] (440), and [A1,19] (450).

FIG. 5 is a simplified flow diagram illustrating an example process 500executed by an information handling system for providing sensor data toa cluster lead node and responding to adjustment comments from the leadnode, in accord with embodiments of the present invention. While theinformation handling system is powered on, sensor analysis modules 120periodically monitor sensors internal to and external to the informationhandling system (510). Such sensors can include temperature sensors in avariety of locations, such as, for example, on one or more processors102, at an air intake, at an air exhaust, mounted externally on the caseof the information handling system, and on a motherboard ordaughterboard of the information handling system. In addition, sensorscan include humidity sensors, RPM sensors for system fans, powerconsumption sensors, and the like. Sensors should be associated withenvironmental factors that affect the operation of the informationhandling system or are indicative of performance issues of theinformation handling system.

Once the sensor data is gathered, the sensor data is transmitted to thecluster lead node (520). The sensor data can be raw data collected fromthe various sensors, coupled with sensor identification or sensor type,or the sensor data can be analyzed sensor data selected to reduce a dataflow to the lead node from all the cluster nodes. A determination can bemade as to whether any of the sensor data has exceeded a threshold value(530). Threshold values are dynamically determined by the lead node inlight of present cluster sensor values and information provided to thelead node by data center management server 142, communicated by thecluster lead node to the cluster nodes, and stored at the cluster nodefor reference by sensor analysis modules 120. Thresholds are set forvarious sensor data to be indicative of a potential problem (e.g.,excessive temperature or problematic airflow) of which data centermanagement should be made aware. Thresholds are dynamically determinedin order to compensate for overall shifts in the environmentalsituation. For example, if a data center, or a portion of a data center,is running hotter than a threshold for temperature will be increaseddynamically. Rules for such dynamic increases can be provided to thelead nodes for local dynamic determination by the data center managementserver. Such rules can also include a maximum difference from a basevalue (e.g., temperature threshold can vary from a base value by up to10%).

If no sensor data exceeds the threshold, then sensor monitoringcontinues. If a sensor data exceeds an associated threshold, thenthreshold exceeded information is provided to the cluster lead (540).Determining that a threshold is exceeded and then providing thatinformation to the cluster lead nodes by cluster nodes reducesprocessing load on the cluster lead node, thereby making responses tosuch information quicker. After providing the threshold exceededinformation to the cluster lead, the information handling system mayreceive an adjustment command from the cluster lead node (550).Adjustment commands can include, for example, a command to adjustperiodicity of sensor measurements for the implicated sensor in order todetermine if the environmental factor is changing rapidly, which may beindicative of a problem needing immediate attention. Another adjustmentcommand could be to adjust granularity of the sensor measurement to geta more exact value of the environmental factor. If no such adjustmentcommand is received, then sensor monitoring continues. If an adjustmentcommand is received, then the sensor analysis module can adjustperiodicity of sensor measurements in response to the adjustment command(560) and adjust granularity of the sensor measurements in response tothe adjustment command (570). Embodiments are not limited to performingjust these types of adjustments, and other types of adjustment commandscan be received (e.g., adjust a fan speed or reduce a CPU clock tocompensate for high temperatures). Monitoring in light of the newperiodicity or granularity can then continue after the adjustment (510).

FIG. 6 is a simplified flow diagram illustrating an example process 600executed by a cluster lead node to respond to sensor data received fromother cluster nodes, in accord with an embodiment of the presentinvention. As discussed above with regard to FIG. 5 , cluster nodestransmitted sensor data to the cluster lead node upon periodicallymonitoring various sensors associated with the cluster node. The clusterlead node receives the sensor data and threshold exceeded data from eachcluster node (605) and then stores the answer data and thresholdexceeded data for further analysis and manipulation (610).

As illustrated, the cluster lead node analyzes the received data indifferent ways. FIG. 6 provides a specific process for handlingtemperature-related data versus another receives sensor data. Otherembodiments and for each data received by the cluster lead andembodiments are not limited to a number of different manners in whichreceived sensor data can be analyzed and manipulated.

For temperature-related data, a determination is made as to whether ameasured temperature exceeds a predetermined threshold for that measuredtemperature (615). As discussed above, the originating cluster node canmake the determination as to whether a threshold is exceeded andprovides that information to the cluster lead. In this manner,processing associated with thresholds can be distributed among thecluster nodes, rather than handled entirely by the cluster lead node. Inother embodiments, however, the cluster lead node can performcomparisons between received sensor data and predetermined thresholds.If a temperature exceeds a predetermined threshold, the cluster leadnode can then coordinate with other cluster lead the to determinewhether adjustments in airflow should be made clusters in the localarea. The cluster lead node can request temperature data from neighborcluster lead nodes (620). The cluster lead can then determine fan speedadjustments for one or more nodes in the cluster of the cluster leadnode and in neighboring clusters (625). The cluster lead node can thentransmit the fan speed adjustments to the implicated nodes (630) or thecluster lead node of a cluster having a node for which the fan speedshould be adjusted (635), which can then transmit the fan adjustmentmessage to implicated nodes in the associated clusters.

If the temperature does not exceed a predetermined threshold (615), fanspeed adjustments are not performed by a cluster temperature mapping canbe generated (640). The cluster temperature mapping is provided to thedata center management system by the cluster lead node (645). As will bediscussed more fully below, the data center management system uses thecluster temperature maps from throughout the data center to generate atemperature mapping of the entire data center. Once a clustertemperature mapping has been provided to the data center managementsystem, the cluster lead node is ready to receive subsequent sensor datafrom the cluster nodes.

For other sensor data, a determination is made as to whether any of thesensor data exceeds a predetermined threshold (650). Again, thisdetermination can be made at the originating cluster node with athreshold exceeded message provided to the cluster lead node, or thedetermination can be made at the cluster lead node. If a threshold isnot exceeded, then the cluster lead node is ready to receive subsequentsensor data from the cluster nodes. If a threshold is exceeded, then adetermination is made as to whether a local decision is preconfiguredfor the exceeded threshold (655). If a local decision is preconfigured,then the cluster lead node can adjust an operational parameter of thecluster node in accord with the configuration (660). For example, if acooling fan of a cluster node is functioning outside of a normaloperational range, then an adjustment to cooling fan speed can bedetermined by the cluster lead node. Likewise, if a noise level in ornear a cluster node is too loud, adjustments to cooling fan speed can bedetermined by the cluster lead node. The operational parameteradjustments are then transmitted to the implicated cluster nodes (665).

If no local decision is configured, or once the parameter is adjusted,the threshold exceeded information is provided to the data centermanagement system for further response or analysis (665). For example,if a storage device is being accessed too frequently, the data centermanagement can be informed so that a determination can be made by datacenter personnel of whether heavily accessed data should be moved toanother storage device. In response to this information, the data centermanagement system can provide an operational parameter adjustment,either automatically or from data center management personnel. If suchan adjustment is received (675), then those adjusted operationalparameters are transmitted to the implicated nodes (680) and the clusterlead node is ready to receive additional sensor data from the clusternodes. If no adjustment is received, then the cluster lead node returnsto receiving additional sensor data from the cluster nodes.

FIG. 7 is a simplified flow diagram illustrating an example process 700executed by a data center management system to respond to data receivedfrom cluster lead nodes, in accord with an embodiment of the presentinvention. As discussed above, cluster lead nodes can transmit mappingdata associated with a type of sensor to the data center managementsystem. The data center management system receives that mapping data(710) and can then use that cluster-associated mapping data to generatea global mapping of the data center (720). The data center managementsystem can assemble the global mapping by having relative locations ofall the clusters through the location protocols of the wireless meshnetwork, discussed above. The data center management system can generatethe mapping using, for example, the temperatures of the various nodesalong with a linear interpolation (e.g. a finite difference-type model)between the nodes or a spline interpolation (e.g., a two-spline weightedintersection model) to estimate the temperatures between the nodes.Depending upon the data being mapped (e.g., temperature, disk usage, airflow), the mapping can incorporate interpolation between known values orjust use the point values.

Once a global mapping is generated, the data center management systemcan determine whether there are adjustments to the data center orindividual nodes within the data center that need to be made in light ofthat global mapping (730). For example, if a region of the data centeris warmer than other regions, fans on the units in that area can havetheir speed increased. Alternatively, environmental systems, such as anHVAC system, can have their cooling air flow increased in that area,especially if additional sensor data indicates that the fans for unitsin that area are already near maximum speed. In another example, ifnoise levels of a region of the data center are high, but thetemperature levels are low, then the fans can of those servers can bereduced in speed, which will save cost and reduce noise. On the otherhand, if the temperature levels are near burnout thresholds, then tosave hardware and keep services running (e.g., virtual machines), thoseservers may need to be repaired or replaced. A global mapping can showdisk usage along with life expectancy of the storage device. If astorage device is nearing end of life, the data stored on the storagedevice can be moved to alternate storage devices, and the older unitsflagged for replacement. The data center management system canautomatically make recommendations for replacement and provide thatinformation to data center management personnel.

If adjustments to system operational parameters are indicated by thedata center management system, those adjustments are transmitted to thecluster lead nodes for further transmission to the implicated clusternodes (740). The implicated cluster nodes can make the adjustments inlight of the information provided by the data center management system,as discussed above with regard to FIG. 5 . The data center managementsystem can also transmit the global mapping information to a mobileservice device (e.g., 260), such as that discussed above with regard toFIG. 2 . The mobile service device can use the mapping information in anaugmented reality (AR) display generated by evaluation module 272. Datacenter management personnel will be able to view and monitorenvironmental issues interactively using the AR display (e.g., a heatmap can be overlaid on a displayed image of the portion of the datacenter the mobile service device camera (e.g., 266) picks up. Personnelcan then act on the recommendation or the displayed mapping and view howthose actions affect the displayed portion of the data center in realtime.

Embodiments of the present system provide a mechanism by whichlocation-related information associated with various informationhandling systems installed within a data center can automatically bedetermined and communicated with a data center management system. Oncethis information is provided to the data center management system, thedata can be used to perform multiple interactions from a managementperspective including, for example, actions based on location or room orrack or aisle. Such automated inventory information is additionallyuseful in conjunction with mobile service devices (e.g., 260) when auser requires a view of what racks have location information populated,and if not, then assigning such information when viewing the rack.Utilizing this information in an augmented reality set up, such as thatdescribed above, provides empty slot information to data centermanagement personnel and can recommend empty slots for insertion of newservers. In addition, in light of the real-time nature of embodiments ofthe present system, fast response can be made by data center managementwhen an information handling system disappears from the mesh network,either due to benign or malicious means.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a method, system, or computer programproduct. Accordingly, aspects may be implemented entirely in hardware,entirely in software (including firmware, resident software, micro-code,etc.) or in an embodiment combining software and hardware. These variousembodiments may all generally be referred to herein as a “circuit,”“module,” or “system.” Furthermore, embodiments may take the form of acomputer program product on a computer-usable storage medium havingcomputer-usable program code embodied in the medium.

Any suitable computer usable or computer readable medium may beutilized. The computer-usable or computer-readable medium may be, forexample, but not limited to, an electronic, magnetic, optical,electromagnetic, infrared, or semiconductor system, apparatus, ordevice. More specific examples (a non-exhaustive list) of thecomputer-readable medium would include the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a portable compact disc read-only memory (CD-ROM), anoptical storage device, or a magnetic storage device. In the context ofthis document, a computer-usable or computer-readable medium may be anymedium that can contain, store, communicate, or transport the programfor use by or in connection with the instruction execution system,apparatus, or device.

Computer program code for carrying out operations of embodiments of thepresent invention may be written in an object-oriented programminglanguage such as Java, Smalltalk, C++ or the like. However, the computerprogram code for carrying out operations of the present invention mayalso be written in conventional procedural programming languages, suchas the “C” programming language or similar programming languages. Theprogram code may execute entirely on the user's computer, partly on theuser's computer, as a stand-alone software package, partly on the user'scomputer and partly on a remote computer or entirely on the remotecomputer or server. In the latter scenario, the remote computer may beconnected to the user's computer through a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Embodiments of the invention are described with reference to flowchartillustrations or block diagrams of methods, apparatus (systems) andcomputer program products according to embodiments of the invention. Itwill be understood that each block of the flowchart illustrations and/orblock diagrams, and combinations of blocks in the flowchartillustrations and/or block diagrams, can be implemented by computerprogram instructions. These computer program instructions may beprovided to a processor of a general purpose computer, special purposecomputer, or other programmable data processing apparatus to produce amachine, such that the instructions, which execute via the processor ofthe computer or other programmable data processing apparatus, createmeans for implementing the functions/acts specified in the flowchartand/or block diagram block or blocks.

These computer program instructions may also be stored in acomputer-readable memory that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture including instruction meanswhich implement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer implemented process such that theinstructions which execute on the computer or other programmableapparatus provide steps for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

Embodiments of the present invention are well adapted to attain theadvantages mentioned as well as others inherent therein. While thepresent disclosure has been depicted, described, and is defined byreference to particular embodiments of the invention, such references donot imply a limitation on the invention, and no such limitation is to beinferred. The invention is capable of considerable modification,alteration, and equivalents in form and function, as will occur to thoseordinarily skilled in the pertinent arts. The depicted and describedembodiments are examples only and are not exhaustive of the scope of theinvention.

Consequently, the invention is intended to be limited only by the spiritand scope of the appended claims, giving full cognizance to equivalentsin all respects.

What is claimed is:
 1. An information handling system comprising: aprocessor; one or more sensors, coupled to the processor, and configuredto measure a first environmental characteristic; a wireless networkinterface, coupled to the processor, and configured to communicate witha wireless mesh network in a data center, the wireless mesh networkenabling the information handling system to communicate with other nodesof the wireless mesh network using a message-oriented protocol; and anon-transitory, computer-readable storage medium embodying computerprogram code, the non-transitory, computer-readable storage mediumcoupled to the processor, the computer program code interacting with aplurality of computer operations and comprising instructions executableby the processor and configured to cause the processor to collect dataassociated with the first environmental characteristic from the one ormore sensors, transmit the data associated with the first environmentalcharacteristic to a cluster lead node using the wireless networkinterface, wherein the information handling system is a member of alocal cluster of nodes in the wireless mesh network and the cluster leadnode is the lead node of the local cluster of nodes, and transmit afirst threshold exceeded message to the cluster lead node when the dataassociated with the first environmental characteristic exceeds athreshold associated with the first environmental characteristic; andwherein the cluster lead node generates a mapping of the firstenvironmental characteristic, the mapping representing the firstenvironmental characteristic across the local cluster of nodes, themapping being performed in response to receipt of the data associatedwith the first environmental characteristic, the mapping representingwhen the first environmental characteristic exceeds the thresholdassociated with the first environmental characteristic based upon thefirst threshold exceeded message.
 2. The information handling system ofclaim 1 wherein the first environmental characteristic comprises one ofprocessor temperature; air inlet temperature; exhaust temperature;ambient temperature; humidity; and fan speed.
 3. The informationhandling system of claim 1, wherein the local cluster of nodes in thewireless mesh network comprises one or more mesh network nodes within afixed radius of the cluster lead node.
 4. The information handlingsystem of claim 1 wherein the cluster lead node is configured tocommunicate directly with each node in the local cluster of nodes anddirectly with cluster lead nodes of neighboring clusters.
 5. Theinformation handling system of claim 4, wherein the cluster lead node isfurther configured to communicate with a data center management server.6. The information handling system of claim 1, wherein the instructionsexecutable by the processor further comprise instructions configured tocause the processor to: receive, via the wireless network interface,from the cluster lead node, a command to adjust an operational parameterin response to the data associated with the first environmentalcharacteristic; and adjust the operational parameter in response to thecommand.
 7. The information handling system of claim 6 wherein theoperational parameter comprises one or more of a periodicity of sensormeasurements of the first environmental characteristic, a granularity ofsensor measurements of the first environmental characteristic, and aspeed of a fan in an enclosure of the information handling system. 8.The information handling system of claim 1, further comprising:transmitting the cluster mapping of the environment characteristic to adata center management server; and, generating a global mapping of thedata center for the environmental characteristic from cluster mappingfrom the cluster lead node.
 9. The information handling system of claim8, further comprising: generating a global mapping of the data centerfor the environmental characteristic from cluster mapping from aplurality of cluster lead nodes.
 10. The information handling system ofclaim 8, wherein: the data center management server assemble the globalmapping by having relative locations of all the clusters through thelocation protocols of the wireless mesh network.
 11. The informationhandling system of claim 10, wherein: the relative locations of all theclusters are assembled using location protocols of the wireless meshnetwork.